package com.ztgf.commodity.models.vo;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.ToStringSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.ztgf.common.annotations.CustomerBigDecimalSerialize;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * author: chenyu.wang
 * date: 2020-06-05 11:09
 * Description: 商城商品详情页VO
 */
@Data
public class CommodityDetailsVO implements Serializable {
    @ApiModelProperty(value = "商品id")
    @JSONField(serializeUsing = ToStringSerializer.class)
    private Long id;
    @ApiModelProperty(value = "店铺id")
    @JSONField(serializeUsing = ToStringSerializer.class)
    private Long shopId;
    @ApiModelProperty(value = "商品名称")
    private String goodsName;
    @ApiModelProperty(value = "上架 0未上架、1已上架")
    private Integer isPublish;
    @ApiModelProperty(value = "商品简介")
    private String goodsDescription;
    @ApiModelProperty(value = "商品主图")
    private String logoUrl;
    @ApiModelProperty(value = "商品图片合集")
    private String logoUrls;
    @ApiModelProperty(value = "商品视频合集")
    private String videoUrls;
    @ApiModelProperty(value = "支付方式，0担保支付")
    private Integer payType;
    @ApiModelProperty(value = "发货时间")
    private Integer sendDays;
    @ApiModelProperty(value = "发货区域")
    private Long sendAreaId;
    @ApiModelProperty(value = "商品可售区域")
    private String availableArea;
    @ApiModelProperty(value = "商品详情")
    private String notes;
    @ApiModelProperty(value = "品牌名称")
    private String brandName;
    @ApiModelProperty(value = "店铺名称")
    private String storeName;
    @ApiModelProperty(value = "店铺等级")
    private Integer storeLevel;
    @ApiModelProperty(value = "商品类型，0现货，1预售，2询价")
    private Integer goodsType;
    @ApiModelProperty(value = "可售区域名称")
    private String availableAreaName;
    @ApiModelProperty(value = "发货区域名称")
    private String sendAreaName;
    @ApiModelProperty(value = "价格")
    //@JsonSerialize(using = CustomerBigDecimalSerialize.class)
    private String price;
    @ApiModelProperty(value = "预售产品首款比例，%")
    private Integer firstBalance;
    @ApiModelProperty(value = "预售产品尾款比例，%")
    private Integer tailBalance;
    @ApiModelProperty(value = "是否询价，0否，1是")
    private Integer isInquiry;
    @ApiModelProperty(value = "卖家地址id")
    private Long sellerAddressId;
    @ApiModelProperty(value = "分类id")
    private Long categoryId;
    @ApiModelProperty(value = "品牌id")
    private Long brandId;
    @ApiModelProperty(value = "是否掌柜推荐 0否、1是")
    private Integer isRecommend;
    @ApiModelProperty(value = "是否新品上架 0否、1是")
    private Integer isNew;
    @ApiModelProperty(value = "是否镇店之宝 0否、1是")
    private Integer isTreasure;
    @ApiModelProperty(value = "质保期 单位月")
    private Integer warrantyMonth;
    @ApiModelProperty(value = "产品规格说明书")
    private String productSpecificationUrl;
    @ApiModelProperty(value = "商品编号")
    private String commodityNumber;
    @ApiModelProperty(value = "上传产品检验合格证书 图片集合，逗号隔开")
    private String productCertificateUrls;
    @ApiModelProperty(value = "是否支持会员折扣 0支持，1不支持")
    private Integer isVipDiscounts;

}
